package com.moon.admin.sys.entity;

import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.moon.admin.framework.mybatisplus.entity.TenantEntity;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;

/**
 * 用户
 * 
 * @author ninglong
 */
@Getter
@Setter
@TableName("sys_user")
@Builder
@AllArgsConstructor
@NoArgsConstructor
@ToString
public class SysUserEntity extends TenantEntity{

	@TableField(exist=false)
	private static final long serialVersionUID = 6323074783496305512L;

	/** 用户ID */
	@TableId(type=IdType.AUTO)
    private Integer id;

    /** 用户名称 */
    private String userName;
    
    /** 手机号码 */
    private String phoneNumber;

    /** 用户性别 */
    private Integer sex;
    
    /** 密码 */
	@JsonIgnore
	private String password;
	
	/** 头像 */
	private String avatar;
	
	/** 个性签名 */
	private String remark;
	
	/**0-正常，1-冻结*/
	private Integer status;

	/**最后登录时间*/
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date lastLoginTime;

    
    /**主岗位id postId_deptId*/
	@TableField(exist=false)
    private String mainPostIdDeptId;

	/** 副岗位id  postId_deptId*/
	@TableField(exist=false)
	private List<String> postIdDeptIds;
	/** 列表显示  部门/岗位 名称 */
	@TableField(exist=false)
	private String deptPostName;
	
	 /** 角色id*/
    @TableField(exist=false)
	private List<Integer> roleIds;

    @TableField(exist = false)
    private String tokenId;
}